package com.jsyl.entity.core;

import java.io.Serializable;
import java.math.BigDecimal;

import com.jsyl.entity.common.BaseEntity;
import com.jsyl.entity.common.orm.annotation.Column;
import com.jsyl.entity.common.orm.annotation.Entity;
import com.jsyl.entity.common.orm.annotation.Id;
/**
 * 用户总账号实体
 * @author song
 *<p>平台上的交易用户没人一个平台虚拟账户</p>
 */
@Entity(table = "NF_ACCOUNT")
public class Account extends BaseEntity implements Serializable {


	private static final long serialVersionUID = 6950578738332095927L;
	   
	 @Id
	 @Column("ID")
	 private Integer id;
	 
	/* 用户ID*/
	 @Column("USER_ID")
	 private  Integer userId;
	 
	/* 总金额  【包含 可用金额、冻结金额、以收利息】*/
	 @Column("TOTAL")
	 private BigDecimal total;
	 
	/* 可用金额*/
	 @Column("USE_MONEY")
	 private BigDecimal useMoney;
	 
	 /* 冻结金额 【 用户申请提现、投标为复审】*/
	 @Column("NO_USE_MONEY")
	 private BigDecimal noUseMoney;
	 
	 /*待收总额 投资的标的后的 【本金+利息】*/
	 @Column("COLLECTION")
	 private BigDecimal collection;
	 
	 /*待还总额  针对平台的借款用户  在平台上*/
	 @Column("REPAY")
	 private BigDecimal repay;
	 
	/* 账户状态 '0 -冻结 ，1,-启用'*/
	 @Column("STATUS")
	 private Integer status;
	 
	/* 账户类型 '0：风险金账户:1：公司账户:2：个人账户【包含投资人和借款人】:3：机构账户'*/
	 @Column("TYPE")
	 private Integer type;

	 @Override
	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public Integer getUserId() {
		return userId;
	}

	public void setUserId(Integer userId) {
		this.userId = userId;
	}

	public BigDecimal getTotal() {
		return total;
	}

	public void setTotal(BigDecimal total) {
		this.total = total;
	}

	public BigDecimal getUseMoney() {
		return useMoney;
	}

	public void setUseMoney(BigDecimal useMoney) {
		this.useMoney = useMoney;
	}

	public BigDecimal getNoUseMoney() {
		return noUseMoney;
	}

	public void setNoUseMoney(BigDecimal noUseMoney) {
		this.noUseMoney = noUseMoney;
	}

	public BigDecimal getCollection() {
		return collection;
	}

	public void setCollection(BigDecimal collection) {
		this.collection = collection;
	}

	public BigDecimal getRepay() {
		return repay;
	}

	public void setRepay(BigDecimal repay) {
		this.repay = repay;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

}
